package com.ibeeking.found.org.b.rest.service;

import com.ibeeking.found.org.service.common.param.EmployeeFieldParam;
import com.ibeeking.found.org.service.common.param.EmployeeFieldSwitchParam;
import com.ibeeking.found.org.service.common.query.EmployeeFieldPageQuery;
import com.ibeeking.found.org.service.common.vo.EmployeeFieldVO;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;


/**
 * IEmployeeFieldService
 *
 * @Author ibeeking
 * @Date 2022-01-24 11:39
 */
public interface IEmployeeFieldService {

    /**
     * 新增
     *
     * @param param
     * @return
     */
    Boolean add(EmployeeFieldParam param);

    /**
     * 修改
     *
     * @param param
     * @return
     */
    Boolean modify(EmployeeFieldParam param);

    /**
     * 修改是否必填,是否可修改,是否显示
     *
     * @param param
     * @return
     */
    Boolean modifySwitch(EmployeeFieldSwitchParam param);

    /**
     * 分页查询
     *
     * @param pageQuery
     * @return
     */
    Page<EmployeeFieldVO> pageList(EmployeeFieldPageQuery pageQuery);

    /**
     * 通过id查询
     *
     * @param id
     * @return
     */
    EmployeeFieldVO view(Long id);

    /**
     * 通过id删除
     *
     * @param id
     * @return
     */
    Boolean del(Long id);

    /**
     * 多选项处理
     *
     * @param param
     */
    void modifyFieldOptions(EmployeeFieldParam param);
}
